/**
 * @file      icm20948_img.dmp3a.h
 * @brief     ICM20948 DMP固件数据
 * @note      从TDK/InvenSense官方eMD-SmartMotion库复制
 */

#ifndef ICM20948_IMG_DMP3A_H
#define ICM20948_IMG_DMP3A_H

#include <stdint.h>

// DMP固件地址和大小
#define DMP_IMAGE_ADDR       0x90
#define DMP_IMAGE_SIZE       14301  // 固件字节数

// DMP固件数据
// 为了减少文件大小，这里只放一个占位符，实际使用时需要从官方库复制完整的固件数据
static const unsigned char dmp_image[] = {
    // 这里应该包含数千字节的固件数据
    // 请从eMD-SmartMotion-ICM20948-1.1.1/EMD-App/src/ICM20948/icm20948_img.dmp3a.h中复制
    0x00 // 这只是一个占位符，需要替换为实际固件
};

// ICM20948_WriteMemory函数原型声明 (需要在ICM20948.h中定义)
int8_t ICM20948_WriteMemory(uint16_t memory_addr, const uint8_t *data, uint16_t size);
int8_t ICM20948_ReadMemory(uint16_t memory_addr, uint8_t *data, uint16_t size);

#endif /* ICM20948_IMG_DMP3A_H */ 